Skip to content

Add workflow to validate repository structure - #4

Merged
mr-adonis-jimenez merged 1 commit into
mainfrom
chore/github-workflows
Mar 26, 2026
Merged

Add workflow to validate repository structure#4
mr-adonis-jimenez merged 1 commit into
mainfrom
chore/github-workflows

Conversation

@mr-adonis-jimenez

Copy link
Copy Markdown
Owner

No description provided.

@gemini-code-assist

Copy link
Copy Markdown

Note

Gemini is unable to generate a summary for this pull request due to the file types involved not being currently supported.

@mr-adonis-jimenez
mr-adonis-jimenez merged commit 1143799 into main Mar 26, 2026
3 of 4 checks passed
@mr-adonis-jimenez
mr-adonis-jimenez deleted the chore/github-workflows branch March 26, 2026 14:25

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a GitHub Actions workflow intended to enforce a consistent repository layout and basic hygiene checks on pushes and pull requests to main/master.

Changes:

  • Introduces .github/workflows/validate-repo-structure.yml to verify required directories/files exist.
  • Adds a scan that fails the job if any tracked file exceeds 100MB.
  • Adds a non-blocking README section presence check plus success/failure summaries.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +21 to +29

for dir in "${required_dirs[@]}"; do
if [ ! -d "$dir" ]; then
echo "❌ ERROR: Required directory missing: $dir"
exit 1
else
echo "✅ Found directory: $dir"
fi
done

Copilot AI Mar 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This workflow will currently fail on every push/PR because it enforces directories (model/docs/scripts/data/screenshots) that do not exist in the repository. Either add these directories in the same PR (e.g., with placeholder files) or relax/gate the check (e.g., only warn or run on workflow_dispatch until the structure is in place).

Suggested change
for dir in "${required_dirs[@]}"; do
if [ ! -d "$dir" ]; then
echo "❌ ERROR: Required directory missing: $dir"
exit 1
else
echo "✅ Found directory: $dir"
fi
done
missing_dirs=()
for dir in "${required_dirs[@]}"; do
if [ ! -d "$dir" ]; then
echo "⚠️ WARNING: Required directory missing: $dir"
missing_dirs+=("$dir")
else
echo "✅ Found directory: $dir"
fi
done
if [ "${#missing_dirs[@]}" -eq 0 ]; then
echo "✅ All required directories are present."
else
echo "⚠️ Some required directories are missing:"
for missing in "${missing_dirs[@]}"; do
echo " - $missing"
done
echo "⚠️ Repository structure check is currently informational only; please add the missing directories in a future change."
fi

Copilot uses AI. Check for mistakes.
Comment on lines +33 to +43
echo "Checking for required documentation files..."
required_files=("README.md" "LICENSE" "CONTRIBUTING.md" "docs/METHODOLOGY.md" "docs/ASSUMPTIONS.md")

for file in "${required_files[@]}"; do
if [ ! -f "$file" ]; then
echo "❌ ERROR: Required file missing: $file"
exit 1
else
echo "✅ Found file: $file"
fi
done

Copilot AI Mar 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step requires CONTRIBUTING.md and docs/METHODOLOGY.md + docs/ASSUMPTIONS.md, but those files (and the docs/ directory) are not present in the repo right now, so the workflow will fail. Either include the missing files in this PR or adjust the required list to match the current repository state.

Copilot uses AI. Check for mistakes.
Comment on lines +71 to +76
- name: Validate file permissions and formats
run: |
echo "Checking file formats and permissions..."
if [ -f "docs/METHODOLOGY.md" ] && [ -f "docs/ASSUMPTIONS.md" ]; then
echo "✅ Required markdown files present"
fi

Copilot AI Mar 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The step name says it validates file permissions/formats, but the script only checks for the presence of two markdown files and does nothing (and passes) otherwise. Consider either implementing the actual permission/format checks (e.g., executable bit expectations, line endings, markdown linting) or renaming/removing this step to avoid a misleading validation signal.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants